/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package poker.geneticAlgorithm;

import java.util.List;

/**
 *
 * @param <T> type of list
 * 
 * @author Benjamin L. Brodie <blbrodie@gmail.com>
 */
public interface Individual <T> {
    
    /**
     * Get the list of the individual. All implementations must return a safe 
     * copy!
     * 
     * To do so -> return new ArrayList<T> (List<T> foo); Safe Copy!
     * 
     * @return a safe copy of the list that resides in the individual. Use this
     * to get at the individual's makeup (genetic code). Ensure that when 
     * implementing, this returns a safe copy. This is important or it will result
     * in problems!
     */
    public List<T> getList();
    
}
